昨天配置好tomcat之後,今天要來試著發布一個修改過的網頁
可以先在java>com資料夾旁邊先新增一個資料夾,方便放我們的class
在裡面新增一個DatabaseConnect的calss,這個calss裡面是我們的主程式,其主要功能是處理 HTTP 請求並生成對應的 HTML 回應
package Package1;
import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
@WebServlet(name = "DatabaseConnect", value = "/DatabaseConnect123 ")
public class DatabaseConnect extends HttpServlet {
private String message;
public void init() {
message = "Never gonna give you up";
}
public void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
super.service(req, res);
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("text/html");
// Hello
PrintWriter out = response.getWriter();
out.println("<html><body>");
out.println("<h1>" + message + "</h1>");
out.println("<h2>" + "Never gonna let you down" + "</h2>");
out.println("</body></html>");
}
public void destroy() {
}
同時去web.xml中新增一些程式,要加在web-app內
<servlet>
<servlet-name>DatabaseConnect</servlet-name>
<servlet-class>Package1.DatabaseConnect</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DatabaseConnect</servlet-name>
<url-pattern>/DatabaseConnect123</url-pattern>
</servlet-mapping>
這裡定義了 Servlet 的名稱為 DatabaseConnect,這個名稱只是應用程式內部使用的識別名稱,並不影響訪問的 URL。
servlet-class:定義了對應的 Java 類別 Package1.DatabaseConnect,也就是說這個 Servlet 實際上是由 Package1內的DatabaseConnect實現的。
因為沒有事先設定,按下執行鍵之後,會導向index.jsp,下面是index.jsp的內容
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<title>ABC123</title>
</head>
<body>
<h1><%= "CXK" %>
</h1>
<br>
<h2><%= "2.5" %></h2>
<br>
<a href="DatabaseConnect123">Try to Connect</a>
</body>
</html>
index.jsp採用html設定,按照上面的內容會顯示
CXK
2.5
Try to Connect(超連結)
點連結會跳到位置為"DatabaseConnect123"的地方,也就是我們在web.xml中設定的servlet-mapping,該位置名稱為"DatabaseConnect",對應為Package1.DatabaseConnect,會執行該程式碼。